/********************************Copyright (c)**********************************\
**
**                   (c) Copyright 2023, Main, China, QD.
**                           All Rights Reserved
**
**                                 By(wo4fisher)
**                           http://www.wo4fisher.com
**
**----------------------------------文件信息------------------------------------
** 文件名称: beep.c
** 创建人员: wht
** 创建日期: 2023-10-20
** 文档描述: 
**
**----------------------------------版本信息------------------------------------
** 版本代号: V0.1
** 版本说明: 初始版本
**
**------------------------------------------------------------------------------
\********************************End of Head************************************/
#include "beep.h"

volatile uint32_t beepAlarmTimeout = 0;
volatile uint8_t beepAlarmFlag = 0;


/*******************************************************************************
** 函数名称: Bsp_BeepOn
** 功能描述: 
** 参数说明: None
** 返回说明: None
** 创建人员: wht
** 创建日期: 2023-10-20
**------------------------------------------------------------------------------
** 修改人员:wht
** 修改日期:
** 修改描述:
**------------------------------------------------------------------------------
********************************************************************************/
void Bsp_BeepOn(void )
{
	HAL_GPIO_WritePin ( BEEP_GPIO_Port,BEEP_Pin,GPIO_PIN_SET );
}
	
/*******************************************************************************
** 函数名称: Bsp_BeepOff
** 功能描述: 
** 参数说明: None
** 返回说明: None
** 创建人员: wht
** 创建日期: 2023-10-20
**------------------------------------------------------------------------------
** 修改人员:wht
** 修改日期:
** 修改描述:
**------------------------------------------------------------------------------
********************************************************************************/
void Bsp_BeepOff(void)
{
	HAL_GPIO_WritePin ( BEEP_GPIO_Port,BEEP_Pin,GPIO_PIN_RESET );
	beepAlarmFlag = 0;
}

/*******************************************************************************
** 函数名称: Bsp_Beep
** 功能描述: 
** 参数说明: nms: [输入/出] 
** 返回说明: None
** 创建人员: wht
** 创建日期: 2023-10-20
**------------------------------------------------------------------------------
** 修改人员:wht
** 修改日期:
** 修改描述:
**------------------------------------------------------------------------------
********************************************************************************/
void Bsp_Beep(uint8_t nms)
{
	Bsp_BeepOn();
	HAL_Delay (nms);
	Bsp_BeepOff();
}

/*******************************************************************************
** 函数名称: Bsp_Beep_Alarm
** 功能描述: 
** 参数说明: timeout: [输入/出] 
** 返回说明: None
** 创建人员: wht
** 创建日期: 2023-10-20
**------------------------------------------------------------------------------
** 修改人员:wht
** 修改日期:
** 修改描述:
**------------------------------------------------------------------------------
********************************************************************************/
void Bsp_Beep_Alarm(uint32_t timeout)
{
	Bsp_BeepOn();
	beepAlarmFlag = 1;
	beepAlarmTimeout = timeout;
}

/*******************************************************************************
** 函数名称: Bsp_Beep_Task
** 功能描述: 
** 参数说明: : [输入/出] 
** 返回说明: None
** 创建人员: wht
** 创建日期: 2023-10-20
**------------------------------------------------------------------------------
** 修改人员:wht
** 修改日期:
** 修改描述:
**------------------------------------------------------------------------------
********************************************************************************/
void Bsp_Beep_Task()
{
	if(--beepAlarmTimeout<=0 && beepAlarmFlag == 1) 
		Bsp_BeepOff();	
}

/********************************End of File************************************/
